/**
 * 
 */
package org.t2.backstage.module.player.model;

import org.banish.sql.core.annotation.Column;
import org.banish.sql.core.annotation.Id;
import org.banish.sql.core.annotation.Index;
import org.banish.sql.core.annotation.Table;
import org.banish.sql.core.annotation.Id.Strategy;
import org.banish.sql.core.annotation.enuma.IndexType;
import org.banish.sql.core.entity.AbstractEntity;
import org.gaming.service.repository.annotation.NoCache;
import org.springframework.stereotype.Repository;

/**
 * 
 */
@Repository
@NoCache
@Table(comment = "基础数据表", dbAlias = "backdata", indexs = {
		@Index(fields = { "channelId", "serverUid", "summaryDate" }, type = IndexType.UNIQUE) })
public class PlayerSummary extends AbstractEntity {
	@Id(strategy = Strategy.AUTO)
	@Column(comment = "数据ID")
	private long id;
	@Column(name = "channel_id", comment = "渠道ID", readonly = true)
	private long channelId;
	@Column(name = "server_uid", comment = "服务器唯一ID", readonly = true)
	private long serverUid;
	@Column(name = "summary_date", comment = "统计日期，yyyyMMdd", readonly = true)
	private int summaryDate;
	@Column(name = "new_player_count", comment = "新增玩家数量（含新老账号）")
	private int newPlayerCount;
	@Column(name = "total_pay", comment = "当日付费总额")
	private long totalPay;
	@Column(name = "pay_player_count", comment = "付费人数（含新老账号）")
	private int payPlayerCount;
	@Column(name = "player_dau", comment = "角色DAU，活跃玩家数量，即当天有登录的玩家数量")
	private int playerDau;
	@Column(name = "new_comer_pay_count", comment = "新注册账号付费人数")
	private int newComerPayCount;
	@Column(name = "new_comer_pay_money", comment = "新注册账号付费总额")
	private long newComerPayMoney;
	@Column(name = "old_comer_pay_count", comment = "老注册账号付费人数")
	private int oldComerPayCount;
	@Column(name = "old_comer_pay_money", comment = "老注册账号付费总额")
	private long oldComerPayMoney;
	
	public long getId() {
		return id;
	}
	public void setId(long id) {
		this.id = id;
	}
	public long getChannelId() {
		return channelId;
	}
	public void setChannelId(long channelId) {
		this.channelId = channelId;
	}
	public long getServerUid() {
		return serverUid;
	}
	public void setServerUid(long serverUid) {
		this.serverUid = serverUid;
	}
	public int getSummaryDate() {
		return summaryDate;
	}
	public void setSummaryDate(int summaryDate) {
		this.summaryDate = summaryDate;
	}
	public int getNewPlayerCount() {
		return newPlayerCount;
	}
	public void setNewPlayerCount(int newPlayerCount) {
		this.newPlayerCount = newPlayerCount;
	}
	public long getTotalPay() {
		return totalPay;
	}
	public void setTotalPay(long totalPay) {
		this.totalPay = totalPay;
	}
	public int getPayPlayerCount() {
		return payPlayerCount;
	}
	public void setPayPlayerCount(int payPlayerCount) {
		this.payPlayerCount = payPlayerCount;
	}
	public int getPlayerDau() {
		return playerDau;
	}
	public void setPlayerDau(int playerDau) {
		this.playerDau = playerDau;
	}
	public int getNewComerPayCount() {
		return newComerPayCount;
	}
	public void setNewComerPayCount(int newComerPayCount) {
		this.newComerPayCount = newComerPayCount;
	}
	public long getNewComerPayMoney() {
		return newComerPayMoney;
	}
	public void setNewComerPayMoney(long newComerPayMoney) {
		this.newComerPayMoney = newComerPayMoney;
	}
	public int getOldComerPayCount() {
		return oldComerPayCount;
	}
	public void setOldComerPayCount(int oldComerPayCount) {
		this.oldComerPayCount = oldComerPayCount;
	}
	public long getOldComerPayMoney() {
		return oldComerPayMoney;
	}
	public void setOldComerPayMoney(long oldComerPayMoney) {
		this.oldComerPayMoney = oldComerPayMoney;
	}
}
